Evolvable Behavior Specifications Using Context-Sensitive Wildcards

نویسنده

  • Gürcan Gülesir
چکیده

The development and maintenance of today’s software systems is an increasingly effort-consuming and error-prone task. A major cause of the effort and errors is the lack of human-readable and formal documentation of software design. In practice, software design is often informally documented, or not documented at all. Therefore, (a) the design cannot be properly communicated between software engineers, (b) it cannot be automatically analyzed for finding and removing faults, (c) the conformance of an implementation to the design cannot be automatically verified, and (d) source code maintenance tasks have to be manually performed, although some of these tasks can be automated using formal documentation. In this thesis, we address these problems for the design and documentation of the behavior implemented in procedural programs. We present the following solutions each addressing the respective problem stated above: (a) A graphical language called VisuaL, which enables engineers to specify constraints on the possible sequences of function calls from a given procedural program, (b) an algorithm called CheckDesign, which automatically verifies the consistency between multiple specifications written in VisuaL, (c) an algorithm called CheckSource, which automatically verifies the consistency between a given implementation and a corresponding specification written in VisuaL, and (d) an algorithm called TransformSource, which uses VisuaL specifications for automatically inserting additional source code at well-defined locations in existing source code. Empirical evidence indicates that CheckSource is beneficial during some of the typical control-flow maintenance tasks: 60% effort reduction, and prevention of one error per 250 lines of source code. These results are statistically significant at the level 0,05. Moreover, the combination of CheckSource and TransformSource is beneficial during some of the typical control-flow maintenance tasks: 75% effort reduction, and prevention of one error per 140 lines of source code. These results are statistically significant at the level 0,01. The main contribution of this thesis is the graphical language VisuaL with its formal underpinning Deterministic Abstract Recognizers (DARs), which defines a new

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Investigating Stabilized Excavations Using Soil Nailing Method in Urban Context

There are various methods for stabilizing excavations in urban areas which one of them is the nailing method. Designing a nailing system and analyzing the performance of excavations is done by various software applications. One of these computer programs is PAXIS software which run based on the finite element method (FEM). In the present study, a numerical analysis of the performance of t...

متن کامل

Behavior evolution of autonomous mobile robot using genetic programming based on evolvable hardware

This paper presents a genetic programming based evolutionary strategy for on-line adaptive learnable evolvable hardware. Genetic programming can be useful control method for evolvable hardware for its unique tree structured chromosome. However it is difficult to represent tree structured chromosome on hardware, and it is difficult to use crossover operator on hardware. Therefore, genetic progra...

متن کامل

Designing evolvable systems in a framework of robust, resilient and sustainable engineering analysis

‘‘Evolvability’’ is a concept normally associated with biology or ecology, but recent work on control of interdependent critical infrastructures reveals that network informatics systems can be designed to enable artificial, human systems to ‘‘evolve’’. To explicate this finding, we draw on an analogy between disruptive behavior and stable variation in the history of science and the adaptive pat...

متن کامل

O -line Evolution for a Robot Navigation System based on a Gate-Level Evolvable Hardware

Recently there has been a great interest in the design and study of evolvable systems based on Arti cial Life principles in order to control the behavior of physically embedded systems such as a mobile robot. This paper studies an evolutionary navigation system for a mobile robot using a Boolean function approach implemented on gatelevel evolvable hardware (EHW). The task of the mobile robot is...

متن کامل

Automating modular program verification by refining specifications

Modular analyses of software systems rely on the specifications of the analyzed modules. In many analysis techniques (e.g. ESC/Java), the specifications have to be provided by users. This puts a considerable burden on users and thus limits the applicability of such techniques. To avoid this problem, some modular analysis techniques automatically extract module summaries that capture specific as...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008